package com.greenline.push.dal.pushcenter;

import java.util.List;

import com.greenline.push.dal.pushcenter.dataobject.DomainAppTemplateDO;
import com.greenline.push.dal.query.DomainAppTemplateQuery;

public interface DomainAppTemplateDAO {

	/**
	 * insert appDomainTemplateDO into DB
	 * 
	 * @param appDomainTempDO
	 * @return
	 */
	Long insert(DomainAppTemplateDO domainAppTemplateDO);

	/**
	 * 
	 * @param id
	 * @return
	 */
	DomainAppTemplateDO getById(Long id);

	/**
	 * 
	 * @param appDomainTempDO
	 * @return
	 */
	Integer update(DomainAppTemplateDO domainAppTemplateDO);

	/**
	 * 
	 * @param id
	 * @return
	 */
	Integer delete(Long id);

	/**
	 * 
	 * @param query
	 * @return
	 */
	DomainAppTemplateQuery listByQuery(DomainAppTemplateQuery query);
	
	/**
	 * 
	 * @param domainId
	 * @return
	 */
	List<DomainAppTemplateDO> getByDomainId(Long domainId);

    Integer getPriorityByApptemplateId(Long apptemplateId);
}
